Lighthouse Certificate Management
Lighthouse uses X.509 certificates for node authentication to the Lighthouse VPN and REST API. By default, certificates are issued by the internal Lighthouse certificate authority as part of the node enrollment process, and are automatically renewed by Lighthouse before expiry, however you can configure certificates for issue by an external certificate authority instead.
Node certificates are revoked by Lighthouse when a node is unenrolled, or for internal certificates, when the certificate has been replaced (after the replacement certificate has been used to successfully connect to the Lighthouse VPN). The replacement certificates are pushed from Lighthouse to connected nodes. Revoked certificates cannot be used to authenticate to the Lighthouse VPN or REST API.
Lighthouse can support an:
-
internal certificate authority. Lighthouse manages internal certificates automatically, and no action is required by the customer.
-
external certificate authority (CA). This feature is available via the command line interface (CLI) and allows you to:
-
Configure an external CA using the Simple Certificate Enrollment Protocol (SCEP).
-
Enroll an Opengear device (node) or secondary instance using a certificate issued by the external CA.
-
Revoke a node or secondary certificate using the Online Certificate Status Protocol (OCSP). This causes them to be unenrolled from Lighthouse.
- Strongly recommended to use a separate CA for each Lighthouse deployment.
- Important to note that the renewal workflow is only supported by internal certificates.
The following table outlines some important differences between and considerations for internal and external CAs.
Certificate Authority | Description |
---|---|
Internal |
Precautions If an old Lighthouse configuration backup is restored to Lighthouse, the node certificate details in the backup may no longer match those on the nodes themselves, in which case the nodes will fail to connect to Lighthouse. Ensure that configuration backups of Lighthouse are kept up to date. Similarly, if a node has its configuration restored from an old backup, its certificate may no longer match the one expected in Lighthouse. In these cases, it will be necessary to unenroll and re-enroll the node. To avoid these situations, ensure configuration backups of nodes are kept up to date. Note: There is a limitation on Operations Manger (OM) and Console Manger CM8XXX nodes where a Lighthouse VPN connection configuration is not retained in the node backup. The Lighthouse VPN certificate and client certificates validity periods should be no greater than the CA certificate used to issue them. The existing certificate validity periods can be seen by running the show sub-command and the pre-configured defaults by using the |
External |
The following limitations apply when you configure an external CA:
|
External |
External Certificate Revocation Every four hours, Lighthouse performs a status check to query the external CA using OCSP to determine the status of all active certificates. If the OCSP certificate status is Revoked, LH unenrolls the client, logs this information, and marks the certificate as revoked.
If there is a security requirement to immediately revoke a certificate in Lighthouse, without the status check, you can unenroll the affected client.
Consider the following:
|
Configuration
The cert_manage
command can be used to control various aspects of certificate management in Lighthouse. The default settings are recommended, and should only be changed with caution.
Only users with sudo access on the primary Lighthouse CLI (for example, via the admin group) can configure certificate management.
For more information, see cert_manage.
Note: All functionality is available only via the Lighthouse CLI. There is no UI or REST API interface for the certificate management feature. The Jobs page on the Lighthouse UI shows node certificate update jobs.
Scheduling
Internal certificate renewal jobs are scheduled using cron to run at 1 AM (Lighthouse system time), every day. An administrator may choose to update the frequency of the cron job under /etc/cron.d/rotate_certificates.cron
.
For external certificates, Lighthouse performs a status check every four hours to query the external CA using OCSP to get a list of revoked certicates. Lighthouse then revokes those certificates and unenrolls those nodes or secondary instances.
Log File
The certificate management logs can be found in /var/log/cert_manager.log
.